The advent of low-cost sensing and robotics platforms is rapidly leading to an era where dispersed, potentially autonomous, network-connected sensing platforms may be the norm. These platforms, referred to in this document as “Agents”, may be used both for physical tasks as well as to sense and provide an indication of detected data points based on arrays of onboard sensors. Each agent, such as an automated machine or a robot, may detect one or more parameters in its local environment and provide an indication of a value or other representation of the detected parameter to other agents in the network. Further, the agent may have the capability to process and/or store the value of the detected parameter and/or the values indicated from other sensors from other agents. In a number of instances, it is beneficial for any one agent to be aware of more than its own collected data and sensing modalities. Ideally, these agents would communicate their observations and these would be arranged into a coherent situational model representing the output of a variety of sensors from a variety of agents, giving each agent a shared ‘global’ model of their collective situation even though each agent is only able to directly sense a small ‘local’ subset of the situational model.
This invention pertains to the development of a mechanism and infrastructure to support and facilitate flexible, dynamic communication and coordination between agents, including a mechanism to manage a global situational model of an environment, including the agents themselves. This mechanism provides a means of not only creating and distributing the shared situational model but also allows for its updating over time. Agents and other computing resources engaged in the use of the model are able to be arranged into hierarchies, allowing for varying levels of detail and abstraction to be employed. For maximum effectiveness, the agents must be able to act independently if temporarily severed from the system, falling back on local processing based on the last known model received, storing additional sensing information for communication when eventually reconnected.